using System;
using System.Collections.Generic;
using ns26;
using ns27;
using Triton.Game.Mono;

namespace Triton.Game.Mapping
{
	[Attribute38("GeneralStorePhoneCover")]
	public class GeneralStorePhoneCover : MonoBehaviour
	{
		[Attribute38("GeneralStorePhoneCover.ModeAnimation")]
		public class ModeAnimation : MonoClass
		{
			public GeneralStoreMode m_mode => method_2<GeneralStoreMode>("m_mode");

			public string m_playAnimationName => method_4("m_playAnimationName");

			public ModeAnimation(IntPtr address, string className)
				: base(address, className)
			{
			}

			public ModeAnimation(IntPtr address)
				: this(address, "ModeAnimation")
			{
			}
		}

		public GeneralStore m_parentStore => method_3<GeneralStore>("m_parentStore");

		public PegUIElement m_backToCoverButton => method_3<PegUIElement>("m_backToCoverButton");

		public string m_buttonEnterAnimation => method_4("m_buttonEnterAnimation");

		public List<ModeAnimation> m_buttonExitAnimations => method_3<Class271<ModeAnimation>>("m_buttonExitAnimations")?.method_25();

		public GameObject m_coverClickArea => method_3<GameObject>("m_coverClickArea");

		public GameObject m_animationClickBlocker => method_3<GameObject>("m_animationClickBlocker");

		public float m_yPos3to2 => method_2<float>("m_yPos3to2");

		public float m_yPos16to9 => method_2<float>("m_yPos16to9");

		public static string s_coverAnimationCoroutine => MonoClass.smethod_8(TritonHs.MainAssemblyPath, "", "GeneralStorePhoneCover", "s_coverAnimationCoroutine");

		public GeneralStorePhoneCover(IntPtr address, string className)
			: base(address, className)
		{
		}

		public GeneralStorePhoneCover(IntPtr address)
			: this(address, "GeneralStorePhoneCover")
		{
		}

		public static bool OnNavigateBack()
		{
			return MonoClass.smethod_14<bool>(TritonHs.MainAssemblyPath, "", "GeneralStorePhoneCover", "OnNavigateBack", Array.Empty<object>());
		}

		public void Awake()
		{
			method_8("Awake");
		}

		public void OnDestroy()
		{
			method_8("OnDestroy");
		}

		public void Start()
		{
			method_8("Start");
		}

		public void ShowCover()
		{
			method_8("ShowCover");
		}

		public void HideCover(GeneralStoreMode selectedMode)
		{
			method_8("HideCover", selectedMode);
		}

		public void OnGeneralStoreModeChanged(GeneralStoreMode oldMode, GeneralStoreMode newMode)
		{
			method_8("OnGeneralStoreModeChanged", oldMode, newMode);
		}

		public void UpdateCoverPosition(object data)
		{
			method_8("UpdateCoverPosition", data);
		}
	}
}
